package com.ttx.pattern.example.bridge.after;

/**
 * 桥梁模式将抽象和实现解耦, 它是为解决继承的缺点而提出的设计模式
 * @author TimFruit
 * @date 2019/6/25 16:22
 */

public abstract class Abstraction {
    
    protected Implementor implementor;

    public Abstraction(Implementor implementor) {  // 通过构造参数注入具体实现者， 提醒使用者该抽象依赖于具体实现化角色
        this.implementor = implementor;
    }
    
    public void operation(){
        System.out.println("部分公共方法操作...");
        
        // 具体实现化角色，可以只实现整体方法中的部分逻辑 
        this.implementor.operationImpl();
    }
}
